package com.bookmall.cart.service;

import com.bookmall.cart.domain.Cart;
import com.bookmall.cart.domain.CartItem;

import java.util.List;

/**
 * @Description:
 * @Author 胡菜鸡
 * @Create 2022-04-15-14:11
 */
public interface ICartService {
    /**
     * 添加书籍至购物车
     * @author 胡菜鸡
     * @date 2022/4/19 15:17
     */
    CartItem addToCart(String bookId, Integer count);

    /**
     * 获取购物车中的购物项
     * @author 胡菜鸡
     * @date 2022/4/19 17:58
     */
    CartItem getCartItem(String bookId);

    /**
     * 获取一个购物车
     * @author 胡菜鸡
     * @date 2022/4/19 21:56
     */
    Cart getCart();

    /**
     * 清空购物车
     * @author 胡菜鸡
     * @date 2022/4/19 22:16
     */
    Boolean clearCart(String cartKey);

    /**
     * 勾选购物项
     * @author 胡菜鸡
     * @date 2022/4/20 8:57
     */
    CartItem checkItem(String bookId, Integer check);

    /**
     * 改变购物项数量
     * @author 胡菜鸡
     * @date 2022/4/20 10:02
     */
    CartItem countItem(String bookId, Integer count);

    /**
     * 删除购物车商品项
     * @author 胡菜鸡
     * @date 2022/4/20 10:58
     */
    Long deleteItem(String bookId);

    /**
     * 获取用户购物车中的数据
     * @author 胡菜鸡
     * @date 2022/4/21 18:01
     */
    List<CartItem> getUserCartItems();

    /**
     * 获取购物车中登录会员的购物项数据
     * @author 胡菜鸡
     * @date 2022/4/28 17:36
     */
    Cart getCartInfoByLoginMember();
}
